package com.example.mq.mqserver.core;

import lombok.Data;

import java.io.Serializable;

/**
 * 表示一个消息的属性
 */
@Data
public class BasicProperties implements Serializable {
    // 消息的身份标识，使用 UUID
    private String messageId;
    // 这个对于不同的交换机，用法不同
    // 对于 DIRECT 交换机，routingKey 用于和 队列名进行匹配
    // 对于 TOPIC 交换机，routingKey 用于和 绑定关系中的 bindingKey 进行匹配
    // 对于 FANOUT 交换机来说，这个参数没有用。
    // 交换机 会转发 消息 给匹配上的队列
    private String routingKey;
    // 是否要持久化，1 - 不持久化，2 - 要持久化
    private int deliverMode = 1;
}
